//package org.zw.zcommon.zapi.zbase;
//
//import com.google.gson.Gson;
//import io.renren.common.exception.ErrorCode;
//import io.renren.common.exception.RenException;
//import io.renren.common.redis.RedisUtils;
//import io.renren.modules.api.utils.GbConfig;
//import io.renren.modules.api.vo.UserStoreVO;
//import org.apache.commons.lang3.StringUtils;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.context.request.RequestContextHolder;
//import org.springframework.web.context.request.ServletRequestAttributes;
//import org.zw.zcommon.zapi.zmodel.ZResult;
//
//import javax.servlet.http.HttpServletRequest;
//
///**
// * TODO
// *
// * @author singleton-zw
// * @date 2025/8/15 16:44
// */
//public class ZBaseApi<T> {
//
//    @Autowired
//    public ZResult zResult;
//
//    protected Long getAppLogin(){
//        return getAppLoginUser().getId();
//    }
//
//    /**
//     * 获取 登录用户
//     * @return
//     */
//    protected T getAppLoginUser(){
//        HttpServletRequest request =
//                ((ServletRequestAttributes) (RequestContextHolder.currentRequestAttributes())).getRequest();
//        Object o = redisUtils.get(GbConfig.user + request.getHeader("token"));
//
//        if (o == null) {
//            throw new RenException(ErrorCode.TOKEN_INVALID);
//        }
//        Gson gson = new Gson();
//
//        UserStoreVO tokenEntity = gson.fromJson((String) o,UserStoreVO.class);
//        return tokenEntity;
//    }
//    protected String getAppLoginToken(){
//        HttpServletRequest request =
//                ((ServletRequestAttributes) (RequestContextHolder.currentRequestAttributes())).getRequest();
//        String token = request.getHeader("token");
//        //如果header中不存在token，则从参数中获取token
//        if (StringUtils.isBlank(token)) {
//            token = request.getParameter("token");
//        }
//        return token;
//    }
//}
